<template>
    <example :template-code="templateString">
        <template #describe>
            <t :id="`${$t('配置接口实现自动请求数据')}`">{{ $t('配置接口实现自动请求数据') }}</t>
            <li>
                传入<span class="d-code">requestConfig</span>接口请求的配置对象，即可实现自动发起请求获取树数据并渲染列表
            </li>
        </template>
        <div style="width: 300px;">
            <sib-item v-model="value" :props="props"></sib-item>
        </div>
        <p style="color: #666;">当前选择的是：{{ value && value.length ? value : '--' }}</p>
    </example>
</template>

<script>
import { ref, reactive } from 'vue';

export default {
    setup() {
        const value = ref(null);
        const props = reactive({
            type: 'table',
            dialogWidth: '900px',
            multiple: true,
            searchConfig: {
                fields: [{ label: '姓名', code: 'name', type: 'text' }],
            },
            tableColumn: [
                { label: '姓名', code: 'name' },
                { label: '人员编码', code: 'code' },
            ],
            requestConfig: {
                url: '/api/list-data.json',
                method: 'get',
                params: {},
            },
        });

        return {
            props,
            value,
            templateString: `<template>
    <sib-item v-model="value" :props="props"></sib-item>
    <p>当前选择的是：{{ value && value.length ? value : '--' }}</p>
</template>

<script>
import { ref, reactive } from 'vue';

export default {
    setup() {
        const value = ref(null);
        const props = reactive({
            type: 'table',
            dialogWidth: '900px',
            multiple: true,
            searchConfig: {
                fields: [{ label: '姓名', code: 'name', type: 'text' }],
            },
            tableColumn: [
                { label: '姓名', code: 'name' },
                { label: '人员编码', code: 'code' },
            ],
            requestConfig: {
                url: '/api/list-data.json',
                method: 'get',
                params: {},
            },
        });

        return { props, value };
    },
};
<\/script>`,
        };
    },
};
</script>
